#ifndef GAMEWINDOW_H
#define GAMEWINDOW_H
#include "Gui.hh"
#include <QtGui/QMainWindow>
#include "ui_GameWindow.h"
#include "Hatter.hh"
#include "Csillag.hh"
#include "../Network/StateChanged.hh"

class Gui::GameWindow : public QMainWindow {
    Q_OBJECT

public:
    GameWindow(QWidget *parent = 0);
    ~GameWindow();

private:
    Ui::GameWindowClass ui;

	Hatter* hatter;

	PlanetToolbar* planetToolbar;

	Flotta* selectedFleet;
	Csillag* selectedStar;

	public: void show_fleet(Network::StateChanged::FleetInfo, QString);
	public: void show_star(Network::StateChanged::StarInfo const& si);

	public: Flotta* get_selected_fleet() const;

	protected slots: void ujKor();

	public: void clear();

	signals: void korvaltas();

	public: void chat_msg_received(QString sender, QString msg);

	public slots: void chat_send_clicked(QString msg);

	signals: void send_chat_msg_to_server(QString msg);

	signals: void attack_fleet(Gui::Flotta*, Gui::Flotta*);
	signals: void attack_planet(Gui::Flotta* attacker, u8, Gui::Bolygo* target);
	signals: void colonize_planet(Gui::Flotta* fleet, u8, Gui::Bolygo* target);
	signals: void build(
      Gui::Csillag* star, Gui::Bolygo* planet, QString what, u8 count
    );
    protected slots: void flotta_kival(Flotta*);
    protected slots: void flotta_celpont(Flotta*);
    protected slots: void planet_targeted(u8 starId, Bolygo* planet);
    protected slots: void emit_build(Bolygo* planet, QString what, u8 count);
	public slots: void star_clicked_left(Csillag* star);
};

#endif // GAMEWINDOW_H
